package org.jutils.task;

import javax.swing.JPanel;

import org.jutils.ui.model.IView;

/*******************************************************************************
 * 
 ******************************************************************************/
public interface IMultiTaskView extends IView<JPanel>
{
    /***************************************************************************
     * @param title
     * @param message
     * @return
     **************************************************************************/
    public ITaskView addTaskView( String taskName );

    /***************************************************************************
     * @param view
     **************************************************************************/
    public void removeTask( ITaskView view );

    /***************************************************************************
     * @param title
     **************************************************************************/
    public void setTitle( String title );

    /***************************************************************************
     * @param percent
     **************************************************************************/
    public void setPercent( int percent );

    /***************************************************************************
     * @return
     **************************************************************************/
    public boolean canContinue();

    /***************************************************************************
     * @param error
     **************************************************************************/
    public void signalError( TaskError error );
}
